/**  
* @Title: CrUserService.java
* @Package com.lemon.service.cityRun
* @Description: (一句话阐述):
* @author Ran_cc
* @date 2018年10月18日
* @version V1.0  
*/
package com.lemon.service.cityRun;

import java.util.List;

import com.lemon.model.cityRun.CrUserAddress;
import com.lemon.model.cityRun.CrUsersInfo;

/**
 * <p>Title: CrUserService</p>
 * <p>Description: 
 * </p>
 * <p>Company: </p>
 * @author Ran_cc
 * @date 2018年10月18日
 * @版本 V 1.0 
 */
public interface CrUserService {

	/**
	 * <b>Description:<blockquote> 查询微信用户列表
	 * </blockquote></b>
	 * 
	 * @Title: selectListBySelective
	 * @param user
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年10月18日
	 */
	List<CrUsersInfo> selectListBySelective(CrUsersInfo user) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: updateUserInfoById
	 * @param user
	 * @return
	 * @author Ran_cc
	 * @date 2018年10月18日
	 */
	int updateUserInfoById(CrUsersInfo user) throws Exception;

	/**
	 * <b>Description:<blockquote> 根据openid查询用户信息
	 * </blockquote></b>
	 * 
	 * @Title: queryOauthInfoByOpenId
	 * @param openid
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月8日
	 */
	CrUsersInfo queryOauthInfoByOpenId(String openid) throws Exception;

	/**
	 * <b>Description:<blockquote> 新增微信用户
	 * </blockquote></b>
	 * 
	 * @Title: insertUserInfo
	 * @param tko
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月8日
	 */
	CrUsersInfo insertUserInfo(CrUsersInfo tko) throws Exception;

	/**
	 * <b>Description:<blockquote> wx获得收货地址列表
	 * </blockquote></b>
	 * 
	 * @Title: getUserAddressList
	 * @param addr
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月9日
	 */
	List<CrUserAddress> getUserAddressList(CrUserAddress addr) throws Exception;

	/**
	 * <b>Description:<blockquote> 新增微信用户收货地址
	 * </blockquote></b>
	 * 
	 * @Title: addUserAddressList
	 * @param addr
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月9日
	 */
	int addUserAddressList(CrUserAddress addr) throws Exception;

	/**
	 * <b>Description:<blockquote> 修改用户收货地址
	 * </blockquote></b>
	 * 
	 * @Title: updateUserAddressList
	 * @param addr
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月9日
	 */
	int updateUserAddressList(CrUserAddress addr) throws Exception;

	/**
	 * <b>Description:<blockquote> 修改用户默认收货地址
	 * </blockquote></b>
	 * 
	 * @Title: updateDefauleAddress
	 * @param addr
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月9日
	 */
	int updateDefauleAddress(CrUserAddress addr) throws Exception;

}
